# -*- coding: UTF-8 -*- #
"""
-------真正的勇士， 敢于直面惨淡的Warning、 敢于正视淋漓的Error-----
@author : 贾鹏博
@file : 37、python 上传文件.py
@time : 2022/5/28 10:56
"""

"""
文件上传有两种方式：
    1、标签是 input ，可直接使用 send_keys()
    2、使用 pywinauto    pip install pywinauto
"""

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from pywinauto.keyboard import send_keys


def input_send():
    driver = webdriver.Chrome()
    ele = driver.find_element(By.ID, 'id')
    # input 标签，可直接使用 send_keys()
    ele.send_keys(r'c:\xxx.txt')
    time.sleep(3)


def pywinauto_send():
    driver = webdriver.Chrome()
    # 找到元素，并点击  调出文件长传的系统弹框界面
    ele1 = driver.find_element(By.ID, 'id1')
    ele1.click()
    # 强制等待
    time.sleep(3)
    # 输入文件路径
    send_keys('文件路径')
    # 回车
    send_keys(f"{VK_RETURN}")
